package com.ruoyi.project.remake.service;

import java.util.List;
import com.ruoyi.project.remake.domain.TCaseMain;
import com.ruoyi.project.remake.domain.dto.CaseMainDto;
import com.ruoyi.project.remake.domain.dto.TCaseMainExcel;
import com.ruoyi.project.remake.domain.test.Query;
import com.ruoyi.project.remake.domain.vo.CaseMainVo;
import com.ruoyi.project.remake.domain.vo.CopyCaseVo;
import com.ruoyi.project.remake.domain.vo.PrintMoney;
import com.ruoyi.project.remake.domain.vo.RemakeVo;

/**
 * 病例主表Service接口
 *
 * @author 孙山伟
 * @date 2020-12-14
 */
public interface ITCaseMainService
{
    /**
     * 查询病例主表
     *
     * @param id 病例主表ID
     * @return 病例主表
     */
    public CaseMainVo selectTCaseMainById(Long id);

    /**
     * 查询病例主表列表
     *
     * @param tCaseMain 病例主表
     * @return 病例主表集合
     */
    public List<TCaseMain> selectTCaseMainList(TCaseMain tCaseMain);

    /**
     * 新增病例主表
     *
     * @param tCaseMain 病例主表
     * @return 结果
     */
    public int insertTCaseMain(TCaseMain tCaseMain);

    /**
     * 修改病例主表
     *
     * @param tCaseMain 病例主表
     * @return 结果
     */
    public int updateTCaseMain(TCaseMain tCaseMain);

    /**
     * 批量删除病例主表
     *
     * @param ids 需要删除的病例主表ID
     * @return 结果
     */
    public int deleteTCaseMainByIds(Long[] ids);

    /**
     * 删除病例主表信息
     *
     * @param id 病例主表ID
     * @return 结果
     */
    public int deleteTCaseMainById(Long id);

    /**
     * 翻拍程序保存病例
     * @param tCaseMain
     * @return
     */
    RemakeVo creatTCaseMain(TCaseMain tCaseMain);


    /**
     * 查询病例主表列表用于前端模块
     *
     * @param caseMainDto
     * @return 病例主表集合
     */
    public  List<CopyCaseVo> selectTCaseMainFrontList(CaseMainDto caseMainDto);

    TCaseMain selectByCarNumber(String carNumber);

    List<TCaseMain> selectSelfFrontList(TCaseMain tCaseMain);

    PrintMoney getTotileMoney(String cardNumber);

    List<TCaseMain> queryByParam(Query query);

    List<TCaseMain> selectTCaseMainFrontAllList(TCaseMain tCaseMain);

    String importExcel(List<TCaseMainExcel> farmerExcelList);

   public void  coverCopyList(String dataList);
}
